package com.pai4j.domain.vo.response.community;

import com.pai4j.domain.vo.response.UserBaseResponseInfoVO;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * 社区共建详情响应VO
 *
 * @author: CYM-pai
 * @date: 2025/07/30 12:00
 **/
@Data
public class CommunityContributionDetailResponseVO {

    /**
     * 共建ID
     */
    private Long id;

    /**
     * 标题
     */
    private String title;

    /**
     * 详细描述
     */
    private String description;

    /**
     * 类型
     * @see com.pai4j.common.enums.ContributionTypeEnum
     */
    private Integer type;

    /**
     * 类型名称
     */
    private String typeName;

    /**
     * 优先级
     * @see com.pai4j.common.enums.ContributionPriorityEnum
     */
    private Integer priority;

    /**
     * 优先级名称
     */
    private String priorityName;

    /**
     * 状态
     * @see com.pai4j.common.enums.ContributionStatusEnum
     */
    private Integer status;

    /**
     * 状态名称
     */
    private String statusName;

    /**
     * 提交人
     */
    private String submitter;

    /**
     * 提交人信息
     */
    private UserBaseResponseInfoVO submitterInfo;

    /**
     * 处理人
     */
    private String assignee;

    /**
     * 处理人信息
     */
    private UserBaseResponseInfoVO assigneeInfo;

    /**
     * 分类
     */
    private String category;

    /**
     * 标签
     */
    private String tags;

    /**
     * 附件列表
     */
    private List<String> attachments;

    /**
     * 期望完成时间
     */
    private Date expectedDate;

    /**
     * 实际完成时间
     */
    private Date actualDate;

    /**
     * 环境信息（针对bug）
     */
    private String environment;

    /**
     * 重现步骤（针对bug）
     */
    private String reproduceSteps;

    /**
     * 评论列表
     */
    private List<ContributionCommentResponseVO> comments;

    /**
     * 操作历史
     */
    private List<ContributionHistoryResponseVO> histories;

    /**
     * 创建时间
     */
    private Date createDate;

    /**
     * 更新时间
     */
    private Date updateDate;
}
